discriminator
Purpose
Customizes the discriminator value used in table-per-subclass inheritance mapping.Examples
class Content {
…
}
class PodCast extends Content{
…
static mapping = {
discriminator "audio"
}
}Description
Usage: discriminator(string/map)Arguments:
column (optional) - The column name to store the discriminator
value - The value to use for the discriminator
By default when mapping inheritance Grails uses a single-table model so that all subclasses share the same table. A discriminator column is then used to help Grails tell what type a particular row is. By default the class name is stored as the value of this column. You can use the discriminator method to customize the value stored:class Content {
…
}
class PodCast extends Content{
…
static mapping = {
discriminator "audio"
}
} You can also customize the discriminator column name:class Content {
…
}
class PodCast extends Content{
…
static mapping = {
discriminator column:"content_type", value: "audio"
}
}